package com.kehutong.charge.service;

import com.kehutong.charge.entity.ChargePayManage;
import com.kehutong.charge.service.impl.ThirdPayManageServiceImpl;
import com.kehutong.common.util.Token;
import org.coraframework.inject.ImplementedBy;
import org.coraframework.json.JSONObject;

/**
 * @author joneRon
 * @Title: kht
 * @Description: 第三方支付管理
 * @date 2021/7/30
 */
@ImplementedBy(ThirdPayManageServiceImpl.class)
public interface ThirdPayManageService {

    /**
     * 支付调用接口
     * @param cpm 支付相关参数
     * @param jsonObject 订单相关参数
     */
    Object callPayOrder(ChargePayManage cpm, JSONObject jsonObject, Token token) throws Exception;

    /**
     * 支付回调接口处理
     */
    Object callbackPayOrder(JSONObject jsonObject);

    /**
     * 支付退款接口处理
     */
    Object reFundPayOrder(JSONObject jsonObject);

    /**
     * 查询订单支付相关信息
     * @param jsonObject
     * @return
     */
    Object findChargePayManage(JSONObject jsonObject);

}
